package trucaso;
/*
 * Actions Panel contains Some game stuff (Envido, truco, etc)
 */
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JPanel;

public class Actions extends JPanel {
	protected JButton truco,envido,flor,maso,quiero,noQuiero,realEnvido,faltaEnvido;
	private GameFlowHandler flow;
	
	public Actions(GameFlowHandler flow) {
		super();
		setLayout(new GridLayout(4,2));
		//These buttons were not transated on purpose. So don't touch!
		truco = new JButton("Truco!");
		envido = new JButton("Envido!");
		realEnvido = new JButton("Real Envido");
		faltaEnvido = new JButton("Falta Envido");
		flor = new JButton("Flor!");
		maso = new JButton("Me voy");
		quiero = new JButton("Quiero!");
		noQuiero = new JButton("No quiero");
		
		this.flow = flow;
		
		envido.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent arg0) {
				Actions.this.flow.envido();
			}
		});
		
		maso.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent arg0) {
				Actions.this.flow.meVoy();				
			}
		});
		
		add(envido);
		add(truco);
		add(faltaEnvido);
		add(quiero);
		add(realEnvido);
		add(noQuiero);
		add(flor);
		add(maso);
		
		disableButtons();
	}
	
	protected void resetButtons() {
		envido.setEnabled(true);
		realEnvido.setEnabled(true);
		faltaEnvido.setEnabled(true);
		flor.setEnabled(true);
		truco.setEnabled(true);
		truco.setText("Truco!");
		quiero.setEnabled(false);
		noQuiero.setEnabled(false);
		maso.setEnabled(true);
	}
	
	protected void disableButtons() {
		truco.setEnabled(false);
		quiero.setEnabled(false);
		noQuiero.setEnabled(false);
		envido.setEnabled(false);
		realEnvido.setEnabled(false);
		faltaEnvido.setEnabled(false);
		flor.setEnabled(false);
		maso.setEnabled(false);
	}
	
	protected void disableEnvido() {
		envido.setEnabled(false);
		realEnvido.setEnabled(false);
		faltaEnvido.setEnabled(false);	
	}
	
	protected void enableQuieros() {
		quiero.setEnabled(true);
		noQuiero.setEnabled(true);
	}
	
	protected void setRetruco() {
		truco.setText("Retruco!");
	}
	
	protected void setValeCuatro() {
		truco.setText("Vale 4!");
	}

}
